package com.tsmti.doctor.entity;

import com.tsmti.core.common.entity.BaseDataEntity;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.Where;

import javax.persistence.*;
import java.util.Date;

/**
 * @Package：com.tsmti.doctor.entity
 * @Class：PimsPathologyRequisition
 * @Description： TODO
 * @Author：king
 * @Date：Created in 2018/11/12 11:28
 * @Company:
 * @Version：
 * @Modified By:
 */
@Entity
@Table(name = "PIMS_PATHOLOGY_REQUISITION")
@DynamicInsert
@DynamicUpdate
@Where(clause = "delFlag = 0")
public class PimsPathologyRequisition extends BaseDataEntity<Long> {
    /**
     * 主键
     */
    private Long id;
    /**
     * 病种类型
     */
    private Long pathologyId;
    /**
     * 申请单号
     */
    private String requisitionNo;
    /**
     * 申请单来源(0手工登记 1第三方系统接收)
     */
    private Long reqSource;
    /**
     * 申请类型
     */
    private Long reqType;
    /**
     * 申请状态(-2已驳回,-1已撤销,0已保存,1已执行2已送出,3已接收,4已登记)
     */
    private Long reqState;
    /**
     * 申请日期
     */
    private Date reqDate;
    /**
     * 申请科室
     */
    private String reqDeptCode;
    /**
     * 申请科室名称
     */
    private String reqDeptName;
    /**
     * 申请病区
     */
    private String reqWardCode;
    /**
     * 申请病区名称
     */
    private String reqWardName;
    /**
     * 床号
     */
    private String reqBedNum;
    /**
     * 申请医生id
     */
    private String reqDoctorId;
    /**
     * 申请医生姓名
     */
    private String reqDoctorName;
    /**
     * 送检电话
     */
    private String reqSendPhone;
    /**
     * 送检材料
     */
    private String reqSendMaterial;
    /**
     * 申请项目ID
     */
    private String reqItemIds;
    /**
     * 申请项目名称
     */
    private String reqItemNames;
    /**
     * 是否加急（0否 1是）
     */
    private Long reqIsEmergency;
    /**
     * 诊疗小组代码或者费用归属科室代码
     */
    private String reqDigCode;
    /**
     * 收费状态(1已收费,0未收费)
     */
    private Long reqChargeStatus;
    /**
     * 送检目的地
     */
    private Long reqReceiveOrgId;
    /**
     * 患者id唯一号(病案号)
     */
    private String reqPatientid;
    /**
     * 门诊/住院号
     */
    private String reqPatientNumber;
    /**
     * 就诊id(患者每一次来院的就诊id)
     */
    private String reqInpatientId;
    /**
     * 住院序号(住院次数)
     */
    private Long reqInpatientNo;
    /**
     * 患者姓名
     */
    private String reqPatientName;
    /**
     * 患者年龄
     */
    private Long reqPatientAge;
    /**
     * 年龄类型(1岁、2月、3周、4日、5小时)
     */
    private Long reqPatAgeType;
    /**
     * 患者性别
     */
    private Long reqPatientSex;
    /**
     * 出生日期
     */
    private Date reqPatBirthday;
    /**
     * 身份证号
     */
    private String reqPatIdcard;
    /**
     * 患者类型(病人类型： 1门诊,2住院,3体检,4婚检,5科研,6特勤,7其他)
     */
    private Long reqPatientType;
    /**
     * 患者联系电话
     */
    private String reqPattelePhone;
    /**
     * 工作单位
     */
    private String reqPatCompany;
    /**
     * 联系地址
     */
    private String reqPatAddress;
    /**
     * 患者临床诊断
     */
    private String reqPatDiagnosis;
    /**
     * 患者主诉
     */
    private String reqPatientComplaint;
    /**
     * 检查要求
     */
    private String reqInspection;
    /**
     * 既往病史
     */
    private String reqAnamnesis;
    /**
     * 是否绝经
     */
    private Long reqIsMenopause;
    /**
     * 初次月经时间
     */
    private Date reqFristMenStruation;
    /**
     * 末次月经时间
     */
    private Date reqLastMenstruation;
    /**
     * 周期
     */
    private Long menStrualPeriod;
    /**
     * 经期
     */
    private Long menStrualCycle;
    /**
     * B超结果
     */
    private String reqBResult;
    /**
     * CT结果
     */
    private String reqCTResult;
    /**
     * X光结果
     */
    private String reqXResult;
    /**
     * 标本id(申请接收后回写)
     */
    private String reqSampleId;
    /**
     * 申请单打印人员id
     */
    private String reqPrintUser;
    /**
     * 申请单打印人员姓名
     */
    private String reqPrintUserName;
    /**
     * 申请单打印时间
     */
    private Date reqPrintTime;
    /**
     * 申请单打印次数
     */
    private Long reqPrintTimes;
    /**
     * 是否外送
     */
    private Long isOutGo;
    /**
     * 送出时间
     */
    private Date reqSendTime;
    /**
     * 送出工号
     */
    private String reqSendUser;
    /**
     * 接收时间
     */
    private Date reqReceiveTime;
    /**
     * 接收人员
     */
    private String reqReceiveUser;
    /**
     * 备注信息
     */
    private String reqRemark;
    /**
     * 知情书是否签订（0否1是）
     */
    private Long reqIsConsent;
    /**
     * 是否手术
     */
    private Long reqIsOps;
    /**
     * 手术医生id
     */
    private String reqOpsDoctorId;
    /**
     * 手术医生姓名
     */
    private String reqOpsDoctorName;
    /**
     * 手术电话
     */
    private String reqOpsPhone;
    /**
     * 手术时间
     */
    private Date reqOpsDate;
    /**
     * 手术所见
     */
    private String reqOpsSee;
    /**
     * 是否同步
     */
    private Long reqIsSynchro;
    /**
     * 同步时间
     */
    private Date synchroTime;
    /**
     * 同步人员
     */
    private String synchroUser;
    /**
     * 申请单标记(0正常1延期2重复)
     */
    private Long reqSign;
    /**
     * 标记人员
     */
    private String reqSignUser;
    /**
     * 标记时间
     */
    private Date reqSignTime;

    @Id
    @Column(name = "ID")
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_PATHOLOGY_REQUISITION")
    @SequenceGenerator(name = "SEQ_PATHOLOGY_REQUISITION", sequenceName = "SEQ_PATHOLOGY_REQUISITION", allocationSize = 1)
    @Override
    public Long getId() {
        return id;
    }

    @Override
    public void setId(Long id) {
        this.id = id;
    }

    @Basic
    @Column(name = "PATHOLOGYID")
    public Long getPathologyId() {
        return pathologyId;
    }

    public void setPathologyId(Long pathologyId) {
        this.pathologyId = pathologyId;
    }

    @Basic
    @Column(name = "REQUISITIONNO")
    public String getRequisitionNo() {
        return requisitionNo;
    }

    public void setRequisitionNo(String requisitionNo) {
        this.requisitionNo = requisitionNo;
    }

    @Basic
    @Column(name = "REQSOURCE")
    public Long getReqSource() {
        return reqSource;
    }

    public void setReqSource(Long reqSource) {
        this.reqSource = reqSource;
    }

    @Basic
    @Column(name = "REQTYPE")
    public Long getReqType() {
        return reqType;
    }

    public void setReqType(Long reqType) {
        this.reqType = reqType;
    }

    @Basic
    @Column(name = "REQSTATE")
    public Long getReqState() {
        return reqState;
    }

    public void setReqState(Long reqState) {
        this.reqState = reqState;
    }

    @Basic
    @Column(name = "REQDATE")
    public Date getReqDate() {
        return reqDate;
    }

    public void setReqDate(Date reqDate) {
        this.reqDate = reqDate;
    }

    @Basic
    @Column(name = "REQDEPTCODE")
    public String getReqDeptCode() {
        return reqDeptCode;
    }

    public void setReqDeptCode(String reqDeptCode) {
        this.reqDeptCode = reqDeptCode;
    }

    @Basic
    @Column(name = "REQDEPTNAME")
    public String getReqDeptName() {
        return reqDeptName;
    }

    public void setReqDeptName(String reqDeptName) {
        this.reqDeptName = reqDeptName;
    }

    @Basic
    @Column(name = "REQWARDCODE")
    public String getReqWardCode() {
        return reqWardCode;
    }

    public void setReqWardCode(String reqWardCode) {
        this.reqWardCode = reqWardCode;
    }

    @Basic
    @Column(name = "REQWARDNAME")
    public String getReqWardName() {
        return reqWardName;
    }

    public void setReqWardName(String reqWardName) {
        this.reqWardName = reqWardName;
    }

    @Basic
    @Column(name = "REQBEDNUM")
    public String getReqBedNum() {
        return reqBedNum;
    }

    public void setReqBedNum(String reqBedNum) {
        this.reqBedNum = reqBedNum;
    }

    @Basic
    @Column(name = "REQDOCTORID")
    public String getReqDoctorId() {
        return reqDoctorId;
    }

    public void setReqDoctorId(String reqDoctorId) {
        this.reqDoctorId = reqDoctorId;
    }

    @Basic
    @Column(name = "REQDOCTORNAME")
    public String getReqDoctorName() {
        return reqDoctorName;
    }

    public void setReqDoctorName(String reqDoctorName) {
        this.reqDoctorName = reqDoctorName;
    }

    @Basic
    @Column(name = "REQSENDPHONE")
    public String getReqSendPhone() {
        return reqSendPhone;
    }

    public void setReqSendPhone(String reqSendPhone) {
        this.reqSendPhone = reqSendPhone;
    }

    @Basic
    @Column(name = "REQSENDMATERIAL")
    public String getReqSendMaterial() {
        return reqSendMaterial;
    }

    public void setReqSendMaterial(String reqSendMaterial) {
        this.reqSendMaterial = reqSendMaterial;
    }

    @Basic
    @Column(name = "REQITEMIDS")
    public String getReqItemIds() {
        return reqItemIds;
    }

    public void setReqItemIds(String reqItemIds) {
        this.reqItemIds = reqItemIds;
    }

    @Basic
    @Column(name = "REQITEMNAMES")
    public String getReqItemNames() {
        return reqItemNames;
    }

    public void setReqItemNames(String reqItemNames) {
        this.reqItemNames = reqItemNames;
    }

    @Basic
    @Column(name = "REQISEMERGENCY")
    public Long getReqIsEmergency() {
        return reqIsEmergency;
    }

    public void setReqIsEmergency(Long reqIsEmergency) {
        this.reqIsEmergency = reqIsEmergency;
    }

    @Basic
    @Column(name = "REQDIGCODE")
    public String getReqDigCode() {
        return reqDigCode;
    }

    public void setReqDigCode(String reqDigCode) {
        this.reqDigCode = reqDigCode;
    }

    @Basic
    @Column(name = "REQCHARGESTATUS")
    public Long getReqChargeStatus() {
        return reqChargeStatus;
    }

    public void setReqChargeStatus(Long reqChargeStatus) {
        this.reqChargeStatus = reqChargeStatus;
    }

    @Basic
    @Column(name = "REQRECEIVEORGID")
    public Long getReqReceiveOrgId() {
        return reqReceiveOrgId;
    }

    public void setReqReceiveOrgId(Long reqReceiveOrgId) {
        this.reqReceiveOrgId = reqReceiveOrgId;
    }

    @Basic
    @Column(name = "REQPATIENTID")
    public String getReqPatientid() {
        return reqPatientid;
    }

    public void setReqPatientid(String reqPatientid) {
        this.reqPatientid = reqPatientid;
    }

    @Basic
    @Column(name = "REQPATIENTNUMBER")
    public String getReqPatientNumber() {
        return reqPatientNumber;
    }

    public void setReqPatientNumber(String reqPatientNumber) {
        this.reqPatientNumber = reqPatientNumber;
    }

    @Basic
    @Column(name = "REQINPATIENTID")
    public String getReqInpatientId() {
        return reqInpatientId;
    }

    public void setReqInpatientId(String reqInpatientId) {
        this.reqInpatientId = reqInpatientId;
    }

    @Basic
    @Column(name = "REQINPATIENTNO")
    public Long getReqInpatientNo() {
        return reqInpatientNo;
    }

    public void setReqInpatientNo(Long reqInpatientNo) {
        this.reqInpatientNo = reqInpatientNo;
    }

    @Basic
    @Column(name = "REQPATIENTNAME")
    public String getReqPatientName() {
        return reqPatientName;
    }

    public void setReqPatientName(String reqPatientName) {
        this.reqPatientName = reqPatientName;
    }

    @Basic
    @Column(name = "REQPATIENTAGE")
    public Long getReqPatientAge() {
        return reqPatientAge;
    }

    public void setReqPatientAge(Long reqPatientAge) {
        this.reqPatientAge = reqPatientAge;
    }

    @Basic
    @Column(name = "REQPATAGETYPE")
    public Long getReqPatAgeType() {
        return reqPatAgeType;
    }

    public void setReqPatAgeType(Long reqPatAgeType) {
        this.reqPatAgeType = reqPatAgeType;
    }

    @Basic
    @Column(name = "REQPATIENTSEX")
    public Long getReqPatientSex() {
        return reqPatientSex;
    }

    public void setReqPatientSex(Long reqPatientSex) {
        this.reqPatientSex = reqPatientSex;
    }

    @Basic
    @Column(name = "REQPATBIRTHDAY")
    public Date getReqPatBirthday() {
        return reqPatBirthday;
    }

    public void setReqPatBirthday(Date reqPatBirthday) {
        this.reqPatBirthday = reqPatBirthday;
    }

    @Basic
    @Column(name = "REQPATIDCARD")
    public String getReqPatIdcard() {
        return reqPatIdcard;
    }

    public void setReqPatIdcard(String reqPatIdcard) {
        this.reqPatIdcard = reqPatIdcard;
    }

    @Basic
    @Column(name = "REQPATIENTTYPE")
    public Long getReqPatientType() {
        return reqPatientType;
    }

    public void setReqPatientType(Long reqPatientType) {
        this.reqPatientType = reqPatientType;
    }

    @Basic
    @Column(name = "REQPATTELEPHONE")
    public String getReqPattelePhone() {
        return reqPattelePhone;
    }

    public void setReqPattelePhone(String reqPattelePhone) {
        this.reqPattelePhone = reqPattelePhone;
    }

    @Basic
    @Column(name = "REQPATCOMPANY")
    public String getReqPatCompany() {
        return reqPatCompany;
    }

    public void setReqPatCompany(String reqPatCompany) {
        this.reqPatCompany = reqPatCompany;
    }

    @Basic
    @Column(name = "REQPATADDRESS")
    public String getReqPatAddress() {
        return reqPatAddress;
    }

    public void setReqPatAddress(String reqPatAddress) {
        this.reqPatAddress = reqPatAddress;
    }

    @Basic
    @Column(name = "REQPATDIAGNOSIS")
    public String getReqPatDiagnosis() {
        return reqPatDiagnosis;
    }

    public void setReqPatDiagnosis(String reqPatDiagnosis) {
        this.reqPatDiagnosis = reqPatDiagnosis;
    }

    @Basic
    @Column(name = "REQPATIENTCOMPLAINT")
    public String getReqPatientComplaint() {
        return reqPatientComplaint;
    }

    public void setReqPatientComplaint(String reqPatientComplaint) {
        this.reqPatientComplaint = reqPatientComplaint;
    }

    @Basic
    @Column(name = "REQINSPECTION")
    public String getReqInspection() {
        return reqInspection;
    }

    public void setReqInspection(String reqInspection) {
        this.reqInspection = reqInspection;
    }

    @Basic
    @Column(name = "REQANAMNESIS")
    public String getReqAnamnesis() {
        return reqAnamnesis;
    }

    public void setReqAnamnesis(String reqAnamnesis) {
        this.reqAnamnesis = reqAnamnesis;
    }

    @Basic
    @Column(name = "REQISMENOPAUSE")
    public Long getReqIsMenopause() {
        return reqIsMenopause;
    }

    public void setReqIsMenopause(Long reqIsMenopause) {
        this.reqIsMenopause = reqIsMenopause;
    }

    @Basic
    @Column(name = "REQFRISTMENSTRUATION")
    public Date getReqFristMenStruation() {
        return reqFristMenStruation;
    }

    public void setReqFristMenStruation(Date reqFristMenStruation) {
        this.reqFristMenStruation = reqFristMenStruation;
    }

    @Basic
    @Column(name = "REQLASTMENSTRUATION")
    public Date getReqLastMenstruation() {
        return reqLastMenstruation;
    }

    public void setReqLastMenstruation(Date reqLastMenstruation) {
        this.reqLastMenstruation = reqLastMenstruation;
    }

    @Basic
    @Column(name = "MENSTRUALPERIOD")
    public Long getMenStrualPeriod() {
        return menStrualPeriod;
    }

    public void setMenStrualPeriod(Long menStrualPeriod) {
        this.menStrualPeriod = menStrualPeriod;
    }

    @Basic
    @Column(name = "MENSTRUALCYCLE")
    public Long getMenStrualCycle() {
        return menStrualCycle;
    }

    public void setMenStrualCycle(Long menStrualCycle) {
        this.menStrualCycle = menStrualCycle;
    }

    @Basic
    @Column(name = "REQBRESULT")
    public String getReqBResult() {
        return reqBResult;
    }

    public void setReqBResult(String reqBResult) {
        this.reqBResult = reqBResult;
    }

    @Basic
    @Column(name = "REQCTRESULT")
    public String getReqCTResult() {
        return reqCTResult;
    }

    public void setReqCTResult(String reqCTResult) {
        this.reqCTResult = reqCTResult;
    }

    @Basic
    @Column(name = "REQXRESULT")
    public String getReqXResult() {
        return reqXResult;
    }

    public void setReqXResult(String reqXResult) {
        this.reqXResult = reqXResult;
    }

    @Basic
    @Column(name = "REQSAMPLEID")
    public String getReqSampleId() {
        return reqSampleId;
    }

    public void setReqSampleId(String reqSampleId) {
        this.reqSampleId = reqSampleId;
    }

    @Basic
    @Column(name = "REQPRINTUSER")
    public String getReqPrintUser() {
        return reqPrintUser;
    }

    public void setReqPrintUser(String reqPrintUser) {
        this.reqPrintUser = reqPrintUser;
    }

    @Basic
    @Column(name = "REQPRINTUSERNAME")
    public String getReqPrintUserName() {
        return reqPrintUserName;
    }

    public void setReqPrintUserName(String reqPrintUserName) {
        this.reqPrintUserName = reqPrintUserName;
    }

    @Basic
    @Column(name = "REQPRINTTIME")
    public Date getReqPrintTime() {
        return reqPrintTime;
    }

    public void setReqPrintTime(Date reqPrintTime) {
        this.reqPrintTime = reqPrintTime;
    }

    @Basic
    @Column(name = "REQPRINTTIMES")
    public Long getReqPrintTimes() {
        return reqPrintTimes;
    }

    public void setReqPrintTimes(Long reqPrintTimes) {
        this.reqPrintTimes = reqPrintTimes;
    }

    @Basic
    @Column(name = "ISOUTGO")
    public Long getIsOutGo() {
        return isOutGo;
    }

    public void setIsOutGo(Long isOutGo) {
        this.isOutGo = isOutGo;
    }

    @Basic
    @Column(name = "REQSENDTIME")
    public Date getReqSendTime() {
        return reqSendTime;
    }

    public void setReqSendTime(Date reqSendTime) {
        this.reqSendTime = reqSendTime;
    }

    @Basic
    @Column(name = "REQSENDUSER")
    public String getReqSendUser() {
        return reqSendUser;
    }

    public void setReqSendUser(String reqSendUser) {
        this.reqSendUser = reqSendUser;
    }


    @Basic
    @Column(name = "REQRECEIVETIME")
    public Date getReqReceiveTime() {
        return reqReceiveTime;
    }

    public void setReqReceiveTime(Date reqReceiveTime) {
        this.reqReceiveTime = reqReceiveTime;
    }


    @Basic
    @Column(name = "REQRECEIVEUSER")
    public String getReqReceiveUser() {
        return reqReceiveUser;
    }

    public void setReqReceiveUser(String reqReceiveUser) {
        this.reqReceiveUser = reqReceiveUser;
    }

    @Basic
    @Column(name = "REQREMARK")
    public String getReqRemark() {
        return reqRemark;
    }

    public void setReqRemark(String reqRemark) {
        this.reqRemark = reqRemark;
    }

    @Basic
    @Column(name = "REQISCONSENT")
    public Long getReqIsConsent() {
        return reqIsConsent;
    }

    public void setReqIsConsent(Long reqIsConsent) {
        this.reqIsConsent = reqIsConsent;
    }

    @Basic
    @Column(name = "REQISOPS")
    public Long getReqIsOps() {
        return reqIsOps;
    }

    public void setReqIsOps(Long reqIsOps) {
        this.reqIsOps = reqIsOps;
    }

    @Basic
    @Column(name = "REQOPSDOCTORID")
    public String getReqOpsDoctorId() {
        return reqOpsDoctorId;
    }

    public void setReqOpsDoctorId(String reqOpsDoctorId) {
        this.reqOpsDoctorId = reqOpsDoctorId;
    }

    @Basic
    @Column(name = "REQOPSDOCTORNAME")
    public String getReqOpsDoctorName() {
        return reqOpsDoctorName;
    }

    public void setReqOpsDoctorName(String reqOpsDoctorName) {
        this.reqOpsDoctorName = reqOpsDoctorName;
    }

    @Basic
    @Column(name = "REQOPSPHONE")
    public String getReqOpsPhone() {
        return reqOpsPhone;
    }

    public void setReqOpsPhone(String reqOpsPhone) {
        this.reqOpsPhone = reqOpsPhone;
    }

    @Basic
    @Column(name = "REQOPSDATE")
    public Date getReqOpsDate() {
        return reqOpsDate;
    }

    public void setReqOpsDate(Date reqOpsDate) {
        this.reqOpsDate = reqOpsDate;
    }

    @Basic
    @Column(name = "REQOPSSEE")
    public String getReqOpsSee() {
        return reqOpsSee;
    }

    public void setReqOpsSee(String reqOpsSee) {
        this.reqOpsSee = reqOpsSee;
    }

    @Basic
    @Column(name = "REQISSYNCHRO")
    public Long getReqIsSynchro() {
        return reqIsSynchro;
    }

    public void setReqIsSynchro(Long reqIsSynchro) {
        this.reqIsSynchro = reqIsSynchro;
    }

    @Basic
    @Column(name = "SYNCHROTIME")
    public Date getSynchroTime() {
        return synchroTime;
    }

    public void setSynchroTime(Date synchroTime) {
        this.synchroTime = synchroTime;
    }

    @Basic
    @Column(name = "SYNCHROUSER")
    public String getSynchroUser() {
        return synchroUser;
    }

    public void setSynchroUser(String synchroUser) {
        this.synchroUser = synchroUser;
    }

    @Basic
    @Column(name = "REQSIGN")
    public Long getReqSign() {
        return reqSign;
    }

    public void setReqSign(Long reqSign) {
        this.reqSign = reqSign;
    }

    @Basic
    @Column(name = "REQSIGNUSER")
    public String getReqSignUser() {
        return reqSignUser;
    }

    public void setReqSignUser(String reqSignUser) {
        this.reqSignUser = reqSignUser;
    }

    @Basic
    @Column(name = "REQSIGNTIME")
    public Date getReqSignTime() {
        return reqSignTime;
    }

    public void setReqSignTime(Date reqSignTime) {
        this.reqSignTime = reqSignTime;
    }
}
